package ch5;

/**
 * 对生产者消费者模式中 传输通道的抽象
 */

public interface Channel<P> {
    /**
     * 往传输通道中存入一个产品
     * @param product
     * @throws InterruptedException
     */
    void put(P product) throws InterruptedException;

    /**
     * 从传输通道中取出一个产品
     */
    P take() throws InterruptedException;
}
